package main

// func main() {
// 	type value struct{}
// 	ch := make(chan value)
// 	go func() {
// 		time.Sleep(time.Second * 3)
// 		close(ch)
// 	}()
// 	select {
// 	case ch <- value{}:
// 		// 发送成功
// 		fmt.Println("成功")
// 	default:
// 	}
// 	time.Sleep(time.Second * 4)
// }

type T struct {
	msg string
}

var g *T

func setup() {
	t := new(T)
	t.msg = "hello, world"
	g = t
}

func main() {
	go setup()
	for g == nil {
	}
	print(g.msg)
}
